perm filename RTEST.TMP[CM,DEK] blob sn#788826 filedate 1985-04-11 generic text, type T, neo UTF8
This is METAFONT, WAITS Version 0.81 (preloaded base=plain 85.4.11)  11 APR 1985 13:43
**\mode=imagen;input rtest
(RTEST.MF[CM,DEK] (CMBASE.MF[CM,DEK]) (CMR10.MF[CM,DEK]) (TEST.MF[CM,DEK]
{tracingedges:=2}
{tracingtitles:=1}
{tracingequations:=1}
{tracingcapsules:=1}
{tracingspecs:=1}
{tracingpens:=1}
{tracingchoices:=1}
{tracingstats:=2}
{tracingoutput:=1}
{tracingmacros:=3}
{if}
{(3.2115)>(41.81093)}
{false}

fill<expr>->addto_currentpicture.contour↑(EXPR0)

--->{curl1}..{curl1}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-0
{begingroup}
{endgroup}

diag_end(SUFFIX2)(SUFFIX3)(EXPR4)(EXPR5)(SUFFIX6)(SUFFIX7)->begingroup.save.fro
m_x,to_x,y_,x_,xx_;if.y(SUFFIX2)>y(SUFFIX3):tiny.bot.else:tiny.top.fi.y_=y(SUFF
IX3);(from_x,y_)=whatever[z(SUFFIX2),z(SUFFIX3)];(to_x,y_)=whatever[z(SUFFIX6),
z(SUFFIX7)];if.x(SUFFIX6)>x(SUFFIX3):x_=x(SUFFIX3)+(EXPR4)*length(z(SUFFIX3)-(f
rom_x,y_));xx_=x(SUFFIX6)-(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_<x_:xx_:=x
_:=0.5[xx_,x_];fi.else:x_=x(SUFFIX3)-(EXPR4)*length(z(SUFFIX3)-(from_x,y_));xx_
=x(SUFFIX6)+(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_>x_:xx_:=x_:=0.5[xx_,x_]
;fi.fi(EXPR4)[z(SUFFIX3),(from_x,y_)]{z(SUFFIX3)-z(SUFFIX2)}...{z(SUFFIX6)-z(SU
FFIX3)}(x_,y(SUFFIX3))..(xx_,y(SUFFIX3)){z(SUFFIX6)-z(SUFFIX3)}...{z(SUFFIX7)-z
(SUFFIX6)}(EXPR5)[z(SUFFIX6),(to_x,y_)]endgroup
(SUFFIX0)<-
(SUFFIX1)<-diag_end
(SUFFIX2)<-0
(SUFFIX3)<-4l
(EXPR4)<-1
(EXPR5)<-1
(SUFFIX6)<-4r
(SUFFIX7)<-3r
{begingroup}
{save}
{if}
{(3.2115)>(18)}
{false}

tiny.top<primary>->begingroup(EXPR2)+(0.5)endgroup
(SUFFIX0)<-tiny
(SUFFIX1)<-top
{fi}
(EXPR2)<-y_
{begingroup}
{(y_)+(0.5)}
{endgroup}
{(y_+0.5)=(18)}
## y_=17.5

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE2633
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-0
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}
{((17.70683,18))-((12.07014,3.2115))}
{(%CAPSULE2633)*((5.63669,14.7885))}
### -14.7885%CAPSULE2633 = -ypart %CAPSULE1354
{((12.07014,3.2115))+((0.38115ypart %CAPSULE1354,ypart %CAPSULE1354))}
### -ypart %CAPSULE1354=-ypart %CAPSULE92+3.2115
{((from_x,17.5))=((0.38115ypart %CAPSULE92+10.84608,ypart %CAPSULE92))}
## ypart %CAPSULE92=17.5
#### xpart %CAPSULE92=17.5162
## from_x=17.5162

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE1312
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((11.53511,-1.00002))-((18.77701,18))}
{(%CAPSULE1312)*((-7.2419,-19.00002))}
### 19.00002%CAPSULE1312 = -ypart %CAPSULE2557
{((18.77701,18))+((0.38115ypart %CAPSULE2557,ypart %CAPSULE2557))}
### -ypart %CAPSULE2557=-ypart %CAPSULE4009+18
{((to_x,17.5))=((0.38115ypart %CAPSULE4009+11.91632,ypart %CAPSULE4009))}
## ypart %CAPSULE4009=17.5
#### xpart %CAPSULE4009=18.58644
## to_x=18.58644
{if}
{(18.77701)>(17.70683)}
{true}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}
{((17.70683,18))-((17.5162,17.5))}
{length((0.19063,0.5))}
{(1)*(0.53511)}
{(17.70683)+(0.53511)}
{(x_)=(18.24194)}
## x_=18.24194

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}
{((18.77701,18))-((18.58644,17.5))}
{length((0.19057,0.5))}
{(1)*(0.5351)}
{(18.77701)-(0.5351)}
{(xx_)=(18.24191)}
## xx_=18.24191
{if}
{(18.24191)<(18.24194)}
{true}
{(18.24194)-(18.24191)}
{(0.5)*(0.00003)}
{(18.24191)+(0.00002)}
{x_:=18.24193}
## x_=18.24193
{xx_:=18.24193}
## xx_=18.24193
{fi}
{else}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}
{((17.5162,17.5))-((17.70683,18))}
{(1)*((-0.19063,-0.5))}
{((17.70683,18))+((-0.19063,-0.5))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-0
{begingroup}
{endgroup}
{((17.70683,18))-((12.07014,3.2115))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}
{((18.77701,18))-((17.70683,18))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4l
{begingroup}
{endgroup}
{((18.77701,18))-((17.70683,18))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}
{((11.53511,-1.00002))-((18.77701,18))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}
{((18.58644,17.5))-((18.77701,18))}
{(1)*((-0.19057,-0.5))}
{((18.77701,18))+((-0.19057,-0.5))}
Path at line 19, before choices:
(17.5162,17.5){1458.82916,3827.4056}..tension atleast1
 ..{4096,0}(18.24193,18){4096,0}
 ..{4096,0}(18.24193,18){4096,0}..tension atleast1
 ..{-1458.8246,-3827.40733}(18.58644,17.5)

Path at line 19, after choices:
(17.5162,17.5)..controls (17.63095,17.80107) and (17.91972,18)
 ..(18.24193,18)..controls (18.24193,18) and (18.24193,18)
 ..(18.24193,18)..controls (18.50018,18) and (18.67842,17.74133)
 ..(18.58644,17.5)

{endgroup}

--->{curl1}..{curl1}

diag_end(SUFFIX2)(SUFFIX3)(EXPR4)(EXPR5)(SUFFIX6)(SUFFIX7)->begingroup.save.fro
m_x,to_x,y_,x_,xx_;if.y(SUFFIX2)>y(SUFFIX3):tiny.bot.else:tiny.top.fi.y_=y(SUFF
IX3);(from_x,y_)=whatever[z(SUFFIX2),z(SUFFIX3)];(to_x,y_)=whatever[z(SUFFIX6),
z(SUFFIX7)];if.x(SUFFIX6)>x(SUFFIX3):x_=x(SUFFIX3)+(EXPR4)*length(z(SUFFIX3)-(f
rom_x,y_));xx_=x(SUFFIX6)-(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_<x_:xx_:=x
_:=0.5[xx_,x_];fi.else:x_=x(SUFFIX3)-(EXPR4)*length(z(SUFFIX3)-(from_x,y_));xx_
=x(SUFFIX6)+(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_>x_:xx_:=x_:=0.5[xx_,x_]
;fi.fi(EXPR4)[z(SUFFIX3),(from_x,y_)]{z(SUFFIX3)-z(SUFFIX2)}...{z(SUFFIX6)-z(SU
FFIX3)}(x_,y(SUFFIX3))..(xx_,y(SUFFIX3)){z(SUFFIX6)-z(SUFFIX3)}...{z(SUFFIX7)-z
(SUFFIX6)}(EXPR5)[z(SUFFIX6),(to_x,y_)]endgroup
(SUFFIX0)<-
(SUFFIX1)<-diag_end
(SUFFIX2)<-4r
(SUFFIX3)<-3r
(EXPR4)<-1
(EXPR5)<-1
(SUFFIX6)<-2l
(SUFFIX7)<-1l
{begingroup}
{save}
{if}
{(18)>(-1.00002)}
{true}

tiny.bot<primary>->begingroup(EXPR2)+(-0.5)endgroup
(SUFFIX0)<-tiny
(SUFFIX1)<-bot
{else}
(EXPR2)<-y_
{begingroup}
{(y_)+(-0.5)}
{endgroup}
{(y_-0.5)=(-1.00002)}
## y_=-0.50002

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE3531
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((11.53511,-1.00002))-((18.77701,18))}
{(%CAPSULE3531)*((-7.2419,-19.00002))}
### 19.00002%CAPSULE3531 = -ypart %CAPSULE3506
{((18.77701,18))+((0.38115ypart %CAPSULE3506,ypart %CAPSULE3506))}
### -ypart %CAPSULE3506=-ypart %CAPSULE3470+18
{((from_x,-0.50002))=((0.38115ypart %CAPSULE3470+11.91632,ypart %CAPSULE3470))}
## ypart %CAPSULE3470=-0.50002
#### xpart %CAPSULE3470=11.72574
## from_x=11.72574

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE3433
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((3.22299,18))-((10.46494,-1.00002))}
{(%CAPSULE3433)*((-7.24194,19.00002))}
### -19.00002%CAPSULE3433 = -ypart %CAPSULE3415
{((10.46494,-1.00002))+((-0.38115ypart %CAPSULE3415,ypart %CAPSULE3415))}
### -ypart %CAPSULE3415=-ypart %CAPSULE3385-1.00002
{((to_x,-0.50002))=((-0.38115ypart %CAPSULE3385+10.08379,ypart %CAPSULE3385))}
## ypart %CAPSULE3385=-0.50002
#### xpart %CAPSULE3385=10.27437
## to_x=10.27437
{if}
{(10.46494)>(11.53511)}
{false}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((11.53511,-1.00002))-((11.72574,-0.50002))}
{length((-0.19063,-0.5))}
{(1)*(0.53511)}
{(11.53511)-(0.53511)}
{(x_)=(11)}
## x_=11

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}
{((10.46494,-1.00002))-((10.27437,-0.50002))}
{length((0.19057,-0.5))}
{(1)*(0.5351)}
{(10.46494)+(0.5351)}
{(xx_)=(11.00003)}
## xx_=11.00003
{if}
{(11.00003)>(11)}
{true}
{(11)-(11.00003)}
{(0.5)*(-0.00003)}
{(11.00003)+(-0.00002)}
{x_:=11.00002}
## x_=11.00002
{xx_:=11.00002}
## xx_=11.00002
{fi}
{fi}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((11.72574,-0.50002))-((11.53511,-1.00002))}
{(1)*((0.19063,0.5))}
{((11.53511,-1.00002))+((0.19063,0.5))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-4r
{begingroup}
{endgroup}
{((11.53511,-1.00002))-((18.77701,18))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((10.46494,-1.00002))-((11.53511,-1.00002))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-3r
{begingroup}
{endgroup}
{((10.46494,-1.00002))-((11.53511,-1.00002))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}
{((3.22299,18))-((10.46494,-1.00002))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}
{((10.27437,-0.50002))-((10.46494,-1.00002))}
{(1)*((-0.19057,0.5))}
{((10.46494,-1.00002))+((-0.19057,0.5))}
Path at line 19, before choices:
(11.72574,-0.50002){-1458.8246,-3827.40733}..tension atleast1
 ..{-4096,0}(11.00002,-1.00002){-4096,0}
 ..{-4096,0}(11.00002,-1.00002){-4096,0}..tension atleast1
 ..{-1458.8327,3827.40424}(10.27437,-0.50002)

Path at line 19, after choices:
(11.72574,-0.50002)..controls (11.611,-0.80109) and (11.32222,-1.00002)
 ..(11.00002,-1.00002)..controls (11.00002,-1.00002) and (11.00002,-1.00002)
 ..(11.00002,-1.00002)..controls (10.67784,-1.00002) and (10.38911,-0.80107)
 ..(10.27437,-0.50002)

{endgroup}

--->{curl1}..{curl1}

diag_end(SUFFIX2)(SUFFIX3)(EXPR4)(EXPR5)(SUFFIX6)(SUFFIX7)->begingroup.save.fro
m_x,to_x,y_,x_,xx_;if.y(SUFFIX2)>y(SUFFIX3):tiny.bot.else:tiny.top.fi.y_=y(SUFF
IX3);(from_x,y_)=whatever[z(SUFFIX2),z(SUFFIX3)];(to_x,y_)=whatever[z(SUFFIX6),
z(SUFFIX7)];if.x(SUFFIX6)>x(SUFFIX3):x_=x(SUFFIX3)+(EXPR4)*length(z(SUFFIX3)-(f
rom_x,y_));xx_=x(SUFFIX6)-(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_<x_:xx_:=x
_:=0.5[xx_,x_];fi.else:x_=x(SUFFIX3)-(EXPR4)*length(z(SUFFIX3)-(from_x,y_));xx_
=x(SUFFIX6)+(EXPR5)*length(z(SUFFIX6)-(to_x,y_));if.xx_>x_:xx_:=x_:=0.5[xx_,x_]
;fi.fi(EXPR4)[z(SUFFIX3),(from_x,y_)]{z(SUFFIX3)-z(SUFFIX2)}...{z(SUFFIX6)-z(SU
FFIX3)}(x_,y(SUFFIX3))..(xx_,y(SUFFIX3)){z(SUFFIX6)-z(SUFFIX3)}...{z(SUFFIX7)-z
(SUFFIX6)}(EXPR5)[z(SUFFIX6),(to_x,y_)]endgroup
(SUFFIX0)<-
(SUFFIX1)<-diag_end
(SUFFIX2)<-2l
(SUFFIX3)<-1l
(EXPR4)<-1
(EXPR5)<-1
(SUFFIX6)<-1r
(SUFFIX7)<-0
{begingroup}
{save}
{if}
{(-1.00002)>(18)}
{false}

tiny.top<primary>->begingroup(EXPR2)+(0.5)endgroup
(SUFFIX0)<-tiny
(SUFFIX1)<-top
{fi}
(EXPR2)<-y_
{begingroup}
{(y_)+(0.5)}
{endgroup}
{(y_+0.5)=(18)}
## y_=17.5

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE3179
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((3.22299,18))-((10.46494,-1.00002))}
{(%CAPSULE3179)*((-7.24194,19.00002))}
### -19.00002%CAPSULE3179 = -ypart %CAPSULE3155
{((10.46494,-1.00002))+((-0.38115ypart %CAPSULE3155,ypart %CAPSULE3155))}
### -ypart %CAPSULE3155=-ypart %CAPSULE3137-1.00002
{((from_x,17.5))=((-0.38115ypart %CAPSULE3137+10.08379,ypart %CAPSULE3137))}
## ypart %CAPSULE3137=17.5
#### xpart %CAPSULE3137=3.41367
## from_x=3.41367

whatever->begingroup.save?;?endgroup
(SUFFIX0)<-
(SUFFIX1)<-whatever
{begingroup}
{save}
### -?=-%CAPSULE3133
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-0
{begingroup}
{endgroup}
{((12.07014,3.2115))-((6.43352,18))}
{(%CAPSULE3133)*((5.63663,-14.7885))}
### 14.7885%CAPSULE3133 = -ypart %CAPSULE3115
{((6.43352,18))+((-0.38115ypart %CAPSULE3115,ypart %CAPSULE3115))}
### -ypart %CAPSULE3115=-ypart %CAPSULE3097+18
{((to_x,17.5))=((-0.38115ypart %CAPSULE3097+13.2942,ypart %CAPSULE3097))}
## ypart %CAPSULE3097=17.5
#### xpart %CAPSULE3097=6.62408
## to_x=6.62408
{if}
{(6.43352)>(3.22299)}
{true}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((3.22299,18))-((3.41367,17.5))}
{length((-0.19067,0.5))}
{(1)*(0.53513)}
{(3.22299)+(0.53513)}
{(x_)=(3.75812)}
## x_=3.75812

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}
{((6.43352,18))-((6.62408,17.5))}
{length((-0.19057,0.5))}
{(1)*(0.5351)}
{(6.43352)-(0.5351)}
{(xx_)=(5.89842)}
## xx_=5.89842
{if}
{(5.89842)<(3.75812)}
{false}
{else}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((3.41367,17.5))-((3.22299,18))}
{(1)*((0.19067,-0.5))}
{((3.22299,18))+((0.19067,-0.5))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-2l
{begingroup}
{endgroup}
{((3.22299,18))-((10.46494,-1.00002))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((6.43352,18))-((3.22299,18))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1l
{begingroup}
{endgroup}
{((6.43352,18))-((3.22299,18))}

...->..tension.atleast1..

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-0
{begingroup}
{endgroup}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}
{((12.07014,3.2115))-((6.43352,18))}

z@#->begingroup(x(SUFFIX2),y(SUFFIX2))endgroup
(SUFFIX0)<-
(SUFFIX1)<-z
(SUFFIX2)<-1r
{begingroup}
{endgroup}
{((6.62408,17.5))-((6.43352,18))}
{(1)*((0.19057,-0.5))}
{((6.43352,18))+((0.19057,-0.5))}
Path at line 20, before choices:
(3.41367,17.5){-1458.8327,3827.40424}..tension atleast1
 ..{4096,0}(3.75812,18){4096,0}
 ..{4096,0}(5.89842,18){4096,0}..tension atleast1
 ..{1458.81537,-3827.41081}(6.62408,17.5)

Path at line 20, after choices:
(3.41367,17.5)..controls (3.32169,17.74133) and (3.49988,18)
 ..(3.75812,18)..controls (4.47156,18) and (5.18498,18)
 ..(5.89842,18)..controls (6.22061,18) and (6.50934,17.80106)
 ..(6.62408,17.5)

{endgroup}

--->{curl1}..{curl1}
Path at line 20, before choices:
(12.07014,3.2115){curl 1}
 ..{curl 1}(17.5162,17.5)..controls (17.63095,17.80107) and (17.91972,18)
 ..(18.24193,18)..controls (18.24193,18) and (18.24193,18)
 ..(18.24193,18)..controls (18.50018,18) and (18.67842,17.74133)
 ..(18.58644,17.5){curl 1}
 ..{curl 1}(11.72574,-0.50002)..controls (11.611,-0.80109) and (11.32222,-1.000
02)
 ..(11.00002,-1.00002)..controls (11.00002,-1.00002) and (11.00002,-1.00002)
 ..(11.00002,-1.00002)..controls (10.67784,-1.00002) and (10.38911,-0.80107)
 ..(10.27437,-0.50002){curl 1}
 ..{curl 1}(3.41367,17.5)..controls (3.32169,17.74133) and (3.49988,18)
 ..(3.75812,18)..controls (4.47156,18) and (5.18498,18)
 ..(5.89842,18)..controls (6.22061,18) and (6.50934,17.80106)
 ..(6.62408,17.5){curl 1}
 ..{curl 1}cycle

Path at line 20, after choices:
(12.07014,3.2115)..controls (13.8855,7.97433) and (15.70085,12.73717)
 ..(17.5162,17.5)..controls (17.63095,17.80107) and (17.91972,18)
 ..(18.24193,18)..controls (18.24193,18) and (18.24193,18)
 ..(18.24193,18)..controls (18.50018,18) and (18.67842,17.74133)
 ..(18.58644,17.5)..controls (16.29955,11.5) and (14.01263,5.49998)
 ..(11.72574,-0.50002)..controls (11.611,-0.80109) and (11.32222,-1.00002)
 ..(11.00002,-1.00002)..controls (11.00002,-1.00002) and (11.00002,-1.00002)
 ..(11.00002,-1.00002)..controls (10.67784,-1.00002) and (10.38911,-0.80107)
 ..(10.27437,-0.50002)..controls (7.98747,5.49998) and (5.70056,11.5)
 ..(3.41367,17.5)..controls (3.32169,17.74133) and (3.49988,18)
 ..(3.75812,18)..controls (4.47156,18) and (5.18498,18)
 ..(5.89842,18)..controls (6.22061,18) and (6.50934,17.80106)
 ..(6.62408,17.5)..controls (8.43944,12.73717) and (10.25479,7.97433)
 ..cycle

(EXPR0)<-path

addto_currentpicture->addto.currentpicture
{addto}

↑<primary>->begingroup(EXPR2)transformed.currenttransform.endgroup
(SUFFIX0)<-
(SUFFIX1)<-↑
(EXPR2)<-path
{begingroup}
{(path)transformed((0,0,1,0,0,1))}
{endgroup}
Path at line 20, before subdivision into octants:
(12.07014,3.2115)..controls (13.8855,7.97433) and (15.70085,12.73717)
 ..(17.5162,17.5)..controls (17.63095,17.80107) and (17.91972,18)
 ..(18.24193,18)..controls (18.24193,18) and (18.24193,18)
 ..(18.24193,18)..controls (18.50018,18) and (18.67842,17.74133)
 ..(18.58644,17.5)..controls (16.29955,11.5) and (14.01263,5.49998)
 ..(11.72574,-0.50002)..controls (11.611,-0.80109) and (11.32222,-1.00002)
 ..(11.00002,-1.00002)..controls (11.00002,-1.00002) and (11.00002,-1.00002)
 ..(11.00002,-1.00002)..controls (10.67784,-1.00002) and (10.38911,-0.80107)
 ..(10.27437,-0.50002)..controls (7.98747,5.49998) and (5.70056,11.5)
 ..(3.41367,17.5)..controls (3.32169,17.74133) and (3.49988,18)
 ..(3.75812,18)..controls (4.47156,18) and (5.18498,18)
 ..(5.89842,18)..controls (6.22061,18) and (6.50934,17.80106)
 ..(6.62408,17.5)..controls (8.43944,12.73717) and (10.25479,7.97433)
 ..cycle

Cycle spec at line 20, after subdivision and autorounding:
(12.1248,3.2115) % beginning in octant `Ne'
   ..controls (14.03296,7.97433) and (15.94112,12.73717)
 ..(17.84927,17.5) % segment 0
   ..controls (17.8886,17.59816) and (17.94736,17.68546)
 ..(18.02045,17.75854) % segment 1
% entering octant `En'
   ..controls (18.17154,17.90964) and (18.38383,18)
 ..(18.6121,18) % segment 1
% entering octant `Es'
   ..controls (18.72478,18) and (18.82297,17.95543)
 ..(18.89236,17.88603) % segment 3
% entering octant `Se'
   ..controls (18.95975,17.81865) and (19,17.72784)
 ..(19,17.6317) % segment 3
% entering octant `Sw'
   ..controls (19,17.58833) and (18.9918,17.54388)
 ..(18.97423,17.5) % segment 3
   ..controls (16.57042,11.5) and (14.1666,5.5)
 ..(11.76279,-0.5) % segment 4
   ..controls (11.72346,-0.59816) and (11.6647,-0.68546)
 ..(11.59161,-0.75854) % segment 5
% entering octant `Ws'
   ..controls (11.44052,-0.90964) and (11.22823,-1)
 ..(10.99995,-1) % segment 5
% entering octant `Wn'
   ..controls (10.77174,-1) and (10.55948,-0.90964)
 ..(10.4084,-0.75856) % segment 7
% entering octant `Nw'
   ..controls (10.33531,-0.68547) and (10.27654,-0.59816)
 ..(10.23721,-0.5) % segment 7
   ..controls (7.8334,5.5) and (5.42958,11.5)
 ..(3.02577,17.5) % segment 8
   ..controls (3.0082,17.54388) and (3,17.58835)
 ..(3,17.63173) % segment 9
% entering octant `Ne'
   ..controls (3,17.72787) and (3.04024,17.81866)
 ..(3.10762,17.88605) % segment 9
% entering octant `En'
   ..controls (3.177,17.95543) and (3.27518,18)
 ..(3.38783,18) % segment 9
   ..controls (4.13776,18) and (4.88765,18)
 ..(5.63756,18) % segment 10
% entering octant `Es'
   ..controls (5.8658,18) and (6.07805,17.90964)
 ..(6.22911,17.75858) % segment 11
% entering octant `Se'
   ..controls (6.3022,17.68549) and (6.36098,17.59818)
 ..(6.40031,17.5) % segment 11
   ..controls (8.30847,12.73717) and (10.21664,7.97433)
 ..(12.1248,3.2115) % segment 12
% entering octant `Es'
% entering octant `En'
 & cycle

Tracing edges at line 20: (weight -1)
(12,3)(12,4)(13,4)(13,7)(14,7)(14,9)(15,9)(15,12)(16,12)(16,14)(17,14)
(17,17)(18,17)(18,18)(19,18)(19,16)(18,16)(18,14)(17,14)(17,11)(16,11)
(16,9)(15,9)(15,6)(14,6)(14,4)(13,4)(13,1)(12,1)(12,-1)(10,-1)(10,1)
(9,1)(9,4)(8,4)(8,6)(7,6)(7,9)(6,9)(6,11)(5,11)(5,14)(4,14)(4,16)(3,16)
(3,18)(6,18)(6,17)(7,17)(7,15)(8,15)(8,12)(9,12)(9,10)(10,10)(10,7)
(11,7)(11,5)(12,5)(12,3).

{fi}
{if}
{true}
{numeric}

pickup<secondary>->if.numeric(EXPR0):currentpen:=pen_[(EXPR0)];pen_top:=pen_top
_[(EXPR0)];pen_bot:=pen_bot_[(EXPR0)];pen_lft:=pen_lft_[(EXPR0)];pen_rt:=pen_rt
_[(EXPR0)];currentpen_path:=pen_path_[(EXPR0)];else:currentpen:=(EXPR0)yscaled.
aspect_ratio;pen_top:=(ypart.penoffset.left.of.currentpen)/aspect_ratio;pen_bot
:=(ypart.penoffset.right.of.currentpen)/aspect_ratio;pen_lft:=xpart.penoffset.d
own.of.currentpen;pen_rt:=xpart.penoffset.up.of.currentpen;path.currentpen_path
;fi
(EXPR0)<-3
{if}
{numeric(3)}
{true}
{currentpen:=pen}
{pen_top:=0.5}
{pen_bot:=-0.5}
{pen_lft:=-0.5}
{pen_rt:=0.5}
{currentpen_path:=unknown path pen_path_3}
{else}

prime_points_inside(SUFFIX0)(SUFFIX1)->theta_:=angle(z(SUFFIX0)r-z(SUFFIX0)l);p
enpos(SUFFIX0)'(whatever,theta_);if.y(SUFFIX1)>y(SUFFIX0):z(SUFFIX0)'=(0,pen_to
p)rotated.theta_+whatever[z(SUFFIX0)l,z(SUFFIX0)r];theta_:=angle(z(SUFFIX1)-z(S
UFFIX0))-90;else:z(SUFFIX0)'=(0,pen_bot)rotated.theta_+whatever[z(SUFFIX0)l,z(S
UFFIX0)r];theta_:=angle(z(SUFFIX1)-z(SUFFIX0))+90;fi.z(SUFFIX0)'l+(pen_lft,0)ro
tated.theta_=z(SUFFIX0)l+whatever*(z(SUFFIX0)-z(SUFFIX1));z(SUFFIX0)'r+(pen_rt,
0)rotated.theta_=z(SUFFIX0)r+whatever*(z(SUFFIX0)-z(SUFFIX1));
(SUFFIX0)<-1
(SUFFIX1)<-2

angle<primary>->begingroup.if.pair(EXPR2):let.angle=ANGLE;else:vardef.angle.pri
mary.D=right.rotated.D.enddef;MFupgrade("angle","dir");fi.angle(EXPR2)endgroup
(SUFFIX0)<-